package cn.web.tunnelrobot.dao;

import cn.web.tunnelrobot.dto.ProjectDTO;
import cn.web.tunnelrobot.dto.WorkAreaDTO;
import cn.web.tunnelrobot.dto.WorkAreaDTO1;
import cn.web.tunnelrobot.pojo.WorkArea;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface WorkAreaDao {
    //通过项目id、标段-工区名称 查询标段-工区信息
    WorkArea getWorkAreaByName(@Param("prId") Integer prId,@Param("waName")String waName);
    //添加标段信息
    int addWorkArea(WorkArea workArea);
    //通过标段-工区id获取标段-工区信息
    WorkArea getWorkAreaById(@Param("waId") Integer waId);
    //修改标段信息
    int updateWorkArea(WorkArea workArea);
    //通过项目id查询标段-工区信息列表
    List<WorkArea> getWorkAreaList(@Param("prId") Integer prId);
    //通过标段-工区id删除标段-工区信息
    int deleteWorkAreaByWaId(@Param("waId")Integer waId);
    //分页查询标段-工区信息列表
    List<WorkAreaDTO> getWorkAreaListPage(@Param("id")Integer id, @Param("projectName") String projectName, @Param("workAreaName") String workAreaName,
                                          @Param("usName") String usName, @Param("pageNo") Integer pageNo, @Param("pageSize") Integer pageSize);
    //查询标段-工区信息列表数量
    int getWorkAreaCountPage(@Param("id")Integer id, @Param("projectName") String projectName, @Param("workAreaName") String workAreaName, @Param("usName") String usName);
    //查询用户id负责的标段（一个用户负责一个标段-工区）
    WorkArea getWorkAreaByUsId(@Param("usId") Integer usId);
    //通过项目id查询标段-工区信息
    List<WorkAreaDTO1> getWorkAreaListReturnWorkAreaDTO1(@Param("prId")Integer prId);
    //通过项目id获取标段-工区id列表信息（分页）
    List<WorkAreaDTO> getWorkAreaListPageByPrId(@Param("id")Integer id, @Param("pageNo") Integer pageNo, @Param("pageSize") Integer pageSize);
    //通过项目id获取标段-工区id列表信息总数（分页）
    int getWorkAreaCountPageByPrId(@Param("id")Integer id);
    //查询标段分区详情
    WorkAreaDTO getDetailWorkAreaById(@Param("waId")Integer waId);

    Integer deleteWorkareaByPrId(@Param("prId")Integer prId);

}
